本文作者:陈进坚
个人博客:https://jian1098.github.io
CSDN博客:https://blog.csdn.net/c_jian
简书:https://www.jianshu.com/u/8ba9ac5706b6
联系方式:jian1098@qq.com
运行下面的程序会报错fatal error: concurrent map writes
1 | package main |
原因是map为引用类型,高并发时对map并发写会产生竞争,不管是否同一个key都会报错,并发对map读是不会有问题的。
解决方法一
将map换成sync.Map
1 | package main |
解决方法二
加锁
1 | package main |